﻿using System;
using System.Collections.Generic;

using Styx;
using Styx.Net;

namespace Example
{
    [NetworkAccessible]
    public interface IStyxNetworkExampleService
    {
        string ServiceName { get; }

        void RegisterUser(string userName);
        void UnregisterUser();
        
        List<string> GetListOfUsers();

        void SendMessage(string userName, string message);

        event EventHandler<UserInfoEventArgs> UserArrived;
        event EventHandler<UserInfoEventArgs> UserLeft;

        event EventHandler<MessageEventArgs> MessageReceived;
    }
}
